package com.example.mall.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import java.math.BigDecimal;
import java.util.Date;

import java.io.Serializable;

/**
 * <p>
 * 热销商品分析表
 * </p>
 *
 * @author whale
 * @since 2025-05-16
 */
@TableName("tb_best_selling_products")
public class BestSellingProducts extends Model<BestSellingProducts> {

    private static final long serialVersionUID = 1L;

    /**
     * 商品分析唯一标识
     */
    @TableId("selling_products_id")
    private Integer sellingProductsId;
    /**
     * 商品ID（关联商品表）
     */
    @TableField("product_id")
    private Long productId;
    /**
     * 统计日期
     */
    @TableField("stat_date")
    private Date statDate;
    /**
     * 销售额
     */
    @TableField("sales_amount")
    private BigDecimal salesAmount;
    /**
     * 订单数量
     */
    @TableField("order_count")
    private Integer orderCount;
    /**
     * 创建时间
     */
    @TableField("create_date")
    private Date createDate;
    /**
     * 更新时间
     */
    @TableField("update_date")
    private Date updateDate;


    public Integer getSellingProductsId() {
        return sellingProductsId;
    }

    public void setSellingProductsId(Integer sellingProductsId) {
        this.sellingProductsId = sellingProductsId;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public Date getStatDate() {
        return statDate;
    }

    public void setStatDate(Date statDate) {
        this.statDate = statDate;
    }

    public BigDecimal getSalesAmount() {
        return salesAmount;
    }

    public void setSalesAmount(BigDecimal salesAmount) {
        this.salesAmount = salesAmount;
    }

    public Integer getOrderCount() {
        return orderCount;
    }

    public void setOrderCount(Integer orderCount) {
        this.orderCount = orderCount;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }


    @Override
    public String toString() {
        return "BestSellingProducts{" +
        ", sellingProductsId=" + sellingProductsId +
        ", productId=" + productId +
        ", statDate=" + statDate +
        ", salesAmount=" + salesAmount +
        ", orderCount=" + orderCount +
        ", createDate=" + createDate +
        ", updateDate=" + updateDate +
        "}";
    }
}
